Companies often track the number of new customers and the number of customers lost during a given time period. An important metric for many companies, particularly those in highly competitive industries such as the telecommunications industry, is the number of customers who have left the company and then returned. It is a goal for most companies to win back the customers who have left to try out the services or product of a competitor. By keeping close track of the number of customers that return to the company and information related to their return, a company can determine the cost associated with winning those customers back and the circumstances surrounding their return, and use this information to make informed strategic business decisions.
Being able to retrieve this information on return customers can be complicated in a large business. For example, a company may receive hundreds of thousands of orders per month for a company's goods or services. A percentage of those orders are from returning customers. The order processing for such a large scale operation is complex, leading to millions of data entries into large databases. The complexity is apparent given that service orders are often assigned different classifications for various reasons, may be held or processed immediately, may be cancelled, and could be duplicated in the system for any number of reasons. It is desirable to accurately determine the number of orders, for goods or services, completed during a given period of time for customers returning to a company from a competitor, for any new customers, or for any selected subset of the overall customer orders for a given time period.